WebRTC (Web Real Time Communication) is a project by the World Wide Web Consortium (W3C) to define a set of Application Programming Interfaces (APIs) to enable browser-to-browser and browser-to-device applications for voice, video, and text. In one example, a user at a web browser is at an e-commerce site and contemplating making a purchase. There is a link on a page of the e-commerce site that indicates that the user can talk to a representative to ask questions or place an order. The user selects the link, which includes a Uniform Resource Identifier (URI) directing the browser to a communication address of the e-commerce retailer. When the user selects the link, a WebRTC client at the user's browser sets up a call with a call center identified by the URI. The user and a customer service representative then have a call (e.g., voice, video, and/or text) via WebRTC.
In the above scenario, there is some asymmetry of information in that the user knows he is reaching out to the e-commerce retailer (or, rather, a call center subcontractor of the retailer), but the call center does not necessarily know who the user is. Such scenario is not generally undesirable for a call center because a call center may welcome calls from the public in an effort to improve the customer experiences of users. However, an individual callee may not welcome unidentified callers. WebRTC does not currently offer a satisfactory technique for authenticating callers using a URI to initiate a call. Furthermore, WebRTC does not currently offer techniques for defining call policies on behalf of callees.